package com.jiayi.api;

import java.util.List;
import com.jiayi.common.core.page.TableDataInfo;
import com.jiayi.data.entity.schema.JiayiNewsType;
import com.jiayi.data.entity.bo.JiayiNewsTypeBO;
import com.jiayi.data.entity.request.JiayiNewsTypeRequest;
import com.jiayi.data.entity.request.JiayiNewsTypeSearchRequest;
import com.jiayi.data.entity.request.JiayiNewsTypeSearchPageRequest;
import com.jiayi.data.entity.response.JiayiNewsTypeDTO;
import javax.servlet.http.HttpServletResponse;


/**
 * 新闻动态类型Service接口
 *
 * @author zzx
 * @date 2024-11-26
 */
public interface JiayiNewsTypeService {
    /**
     * 查询新闻动态类型
     *
     * @param id 新闻动态类型主键
     * @return 新闻动态类型
     */
    public JiayiNewsTypeDTO selectJiayiNewsTypeById(Long id);

    /**
     * 查询新闻动态类型列表 分页
     *
     * @param request 新闻动态类型
     * @return 新闻动态类型集合
     */
    public TableDataInfo selectJiayiNewsTypeList(JiayiNewsTypeSearchPageRequest request);

    /**
     * 查询新闻动态类型列表 不分页
     *
     * @param request 新闻动态类型
     * @return 新闻动态类型集合
     */
    public List<JiayiNewsType> selectJiayiNewsTypeList(JiayiNewsTypeSearchRequest request);
    List<JiayiNewsTypeDTO> selectJiayiNewsTypeListByIds(Long...ids);


    /**
     * excel 导出 全量
     *
     * @param request 新闻动态类型
     */
    public void export(JiayiNewsTypeSearchRequest request, HttpServletResponse response);

    /**
     * 新增新闻动态类型
     *
     * @param request 新闻动态类型
     * @return 结果
     */
    public int insertJiayiNewsType(JiayiNewsTypeRequest request);

    /**
     * 修改新闻动态类型
     *
     * @param request 新闻动态类型
     * @return 结果
     */
    public int updateJiayiNewsType(JiayiNewsTypeRequest request);

    /**
     * 批量删除新闻动态类型
     *
     * @param ids 需要删除的新闻动态类型主键集合
     * @return 结果
     */
    public int deleteJiayiNewsTypeByIds(Long[] ids);

    /**
     * 删除新闻动态类型信息
     *
     * @param id 新闻动态类型主键
     * @return 结果
     */
    public int deleteJiayiNewsTypeById(Long id);

}
